package com.zy.teacherSide.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zy.teacherSide.entity.TeacherTask;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * @author 29787
 */
public interface ITeacherTaskService extends IService<TeacherTask> {

    /**
     * 根据课程id，教师id，班级id查询当作业
     * @param courseId
     * @param teacherId
     * @param classroomId
     * @return TeacherTask
     */
    TeacherTask getTeacherTask(Integer courseId, Integer teacherId, Integer classroomId);

    /**
     * 根据课程id，班级id查询当作业
     * @param courseId
     * @param classroomId
     * @return  List<TeacherTask>
     */
    List<TeacherTask> getTaskCourseIdAndClassroomId(Integer courseId, Integer classroomId);

    /**
     * 根据课程id，教师id，班级id,作业id查询当作业
     * @param courseId
     * @param taskId
     * @param teacherId
     * @param classroomId
     * @return TeacherTask
     */
    TeacherTask getTeacherTaskByTaskId(Integer courseId,Integer taskId, Integer teacherId, Integer classroomId);

    /**
     * 查询作业信息
     * @param classroomId
     * @param teacherId
     * @param courseId
     * @return List<TeacherTask>
     */
   List<TeacherTask> getTeacherTaskByClassroomIdAndTeacherIdAndCourseId(Integer classroomId, Integer teacherId, Integer courseId);

    /**
     * 根据教师id查询作业信息
     * @param teacherId
     * @return List<TeacherTask>
     */
    List<TeacherTask> getTeacherTaskByTeacherId(Integer teacherId);

    /**
     * 根据课程id，教师id，班级id,作业名称查询当作业
     * @param courseId
     * @param taskName
     * @param teacherId
     * @param classroomId
     * @return TeacherTask
     */
    TeacherTask getTeacherTaskByCourseIdAndTaskNameAndTeacherIdAndClassroomId(Integer courseId,String taskName, Integer teacherId, Integer classroomId);

}
